The disclosure relates in general to the field of on-demand computer databases, and in particular to database locks for use with the on-demand computer databases. Still more particularly, the disclosure relates to a method and service for monitoring use of database locks to describe and evaluate customer use of the on-demand computer databases.
In an effort to become more responsive to changing business needs, many companies are incorporating the services of third-party Information Technology (IT) service providers. One example of such a service provider is IBM's On-Demand Business™ service provided by International Business Machines Corporation of Armonk, N.Y.
One aspect of IBM's On-Demand Business™ service is illustrated in FIG. 1 as an Operating Environment Architecture (OEA) 100. A user 102 is able to communicate with multiple application services 104 via an interface identified as business services 106. Application services 104, via a middleware depicted as Enterprise Service Bus (ESB) 108, is able to access a variety of infrastructure services 110. As depicted, infrastructure services 110 include utility business services, service level automation and orchestration, and resource virtualization services. As discussed below, businesses 112 are also able to communicate with user 102 and infrastructure services 110 via enterprise service bus 108.
An example of the OEA 100 and its use is as follows. User 102 might be a call center, which can receive a call from a truck driver who is on the road and needing a truck tire to be replaced by the side of the road. The truck driver (not shown) can contact the call center requesting such assistance. The call center (user 102) accesses an appropriate application service, such a user access service, user interaction service, business process choreography service, business function service, common service and/or information management service. These application services establish the appropriate protocol to send the request for flat tire assistance to the ESB 108, which forwards the service request to a business 112, such as a tire service company. In addition, business 112 may also be the owner of the truck (or fleet) being driven by the driver who requested the road service, thus permitting the fleet owner to access databases in infrastructure services 110. The fleet owner is thus able to access the database in the infrastructure services 110 to monitor what service has been requested and the charge for that service. The call center (user 102) interfaces with the driver who requested the tire service, and a new tire is delivered (or the old tire is repaired). In this scenario, the database record associated with the service call may be locked for tens of minutes while the call center tries to locate a nearby service provide available to provide the service.
Note again that application services 104 and infrastructure services 110 are accessible to multiple users 102 and businesses 112, thus making the On-Demand OEA 100, scalable, flexible, expandable, but also in need of coordination and control.
One area of control that is required is control of various databases, including those found in infrastructure services 110. For example, one or more of the databases in infrastructure services 110 may need to be temporarily locked while order information, billing information, etc., is being accessed and/or updated by either a user 102 or a business 112. This locking procedure is accomplished by a specialized piece of software known as a database lock. In the prior art, each database software vendor for a particular database required a user 102 (or a business 112) to be in communication with that database and to use a particularly formatted database lock to lock a database. This has proven cumbersome, and thus there is a need for a universal database locking system that is able to lock any of the databases, no matter which database software vendor is supplying/maintaining the databases.
In addition to the need for establishing a universal database locking system, there is also a need for a method and service to monitor and evaluate the use of database locks, thus providing information regarding which databases are being used and under what parameters (by whom, where, when, etc.).